package com.applcn.message.utils.sms;

import com.applcn.core.base.Result;

/**
 * 对接不同短信平台实现类的公共抽象类
 */
public interface AbstractSmsUtil {

    /**
     * 获取短信平台选择code
     * 参考枚举 {@link com.applcn.message.enums.SmsChoiceEnum}
     *
     * @return
     */
    int getCode();

    /**
     * 发送短信验证码
     * 发送短信验证码固定两个参数:验证码，有效期
     *
     * @param phone
     * @param smsSign
     * @param templateId
     * @param params
     * @return
     */
    Result sendSmsMessage(String phone, String smsSign, String templateId, String... params);

    /**
     * 群发短信
     *
     * @param phones
     * @param smsSign
     * @param templateId
     * @param params
     * @return
     */
    Result sendMessageGroup(String[] phones, String smsSign, String templateId, String[] params);
}
